1. Field of the Invention
Systems and methods consistent with the present invention relate to a peer-to-peer (P2P) network, and more particularly, to of supporting quality of service (QoS)-enabled digital content in a P2P network.
2. Description of the Related Art
Peer-to-peer (P2P) is a technology which enables a computer of a person who is seeking information and a computer of a person who has the information to be connected directly without a server computer in-between on the Internet, thereby allowing the information to be shared, and a new service to be provided by applying the P2P technology. Unlike the conventional method requiring a search engine for finding information on the Internet, information can be received directly from any personal computer (PC) connected to the Internet, and in addition to searching downloading can even be performed.
P2P technology applies the concept of a local area network (LAN) to the Internet. If P2P technology is used, PC users can freely access each other's computers without a separate server or a fixed IP address (dedicated line), and exchange required data. Accordingly, ordinary PC users can directly exchange MP3 files or other computer files with each other without an intermediary, and in relation to Internet businesses, this P2P technology can be applied to a wide variety of fields.
A P2P network has an ad-hoc structure in which dispersed nodes communicate with each other without any central control, and each participating node can perform both a router role and a server role. The P2P network is applied to an environment that does not require continuous connection.
All nodes participating in a P2P network permit other nodes to access respective resources, thereby participating in the P2P network. Without a separate central management system, each node provides a cooperative service among participants.
File sharing is a representative type of P2P application service. A client node which downloads a file in a P2P environment also provides the file to other nodes, thereby also performing a server role. Providing presence information of nodes and resources in a P2P-based voluntary structural organization is a basic function of the P2P system. Thus, a node can directly communicate with other nodes and can send a query about a required resource.
As file sharing programs of a P2P system, Napster and Gnutella have been developed, followed by KaZaA which is now widely used. A characteristic of KaZaA is that after finding a plurality of users having identical files, the file is divided into smaller parts, and the smaller parts are downloaded at the same time from a plurality of places. For example, if the file is downloaded from three places, the download can be finished three times faster than downloading from one place.
Another characteristic of KaZaA is that searching is performed by using a supernode method. This can be regarded as a compromise between the Napster method in which searching is centrally performed, and the Gnutella method in which searching is performed in a completely distributed manner. Among users' computers, those computers with relatively larger capacities are selected and referred to as supernodes. In each supernode, the list of files shared by the users neighboring the supernode is stored. When a user begins searching, the user sends a search request to a supernode to which the user is connected, and then, the request is also transferred to other supernodes.
However, in this P2P network, the connection of each peer is dynamic, that is, according to user's circumstances, the related node may be irregularly disconnected from or connected to the network. Accordingly, if one node having a predetermined file is disconnected, a download plan of another node to obtain data from the disconnected node may fail. As a result, this transient characteristic of the P2P network cannot guarantee the data transmission performance, thereby making the operation of the network unpredictable. Accordingly, a service for providing QoS-enabled digital content may not be performed normally.